The invention relates to the field of preparation of optical-reading codes.
An optical-reading code is a symbology, i.e. a graphic representation of a set of data. Various formats have been proposed to codify the production of an image that bijectively corresponds to input data. For example Datamatrix (ISO/IEC 16022), Maxicode (ISO/IEC 16023), QR-Code (ISO/IEC 18004), among others, are among such formats.
The output image is composed of a set of square-shaped black and white dots called modules. These points define a flat file, also called a matrix, from which the original data can be recovered.
Optical-reading codes are very advantageous since they can store a large amount of data on a limited area, and in a highly reproducible manner. Thus, many software applications are now available for phones (also called “smart phones” or “Smartphones”) and tablets. These applications make it possible to read optical-reading codes and to use the data contained therein. To do this, these applications use the photographic optical sensor (or video camera), and restore the information on the basis of the image or sequence of images taken. This type of application makes it possible to avoid optical character recognition (OCR), and enables for example to provide a link to a website or another link in a magazine or in a shopwindow, without the user having to enter the address or to make any other effort.
One of the main drawbacks associated with optical-reading codes is that they are unsightly. As a matter of fact, the algorithms corresponding to the various formats produce black and white squares matrices that are meaningless to the person watching same. For example, it is difficult to associate graphic elements of the universe of the code publisher with a given code.
Moreover, associating a graphic display—whether a drawing or a photograph—with an optical-reading code is complex, and generally makes the code illegible, or severely limits the amount of information it can contain. For these reasons, every effort to customize optical-reading codes have so far been rather trials and errors, through tests and failures, until a functional and aesthetically pleasing enough code has been obtained. In this context, no solution currently exists to produce graphically-customized optical-reading codes, still less such codes that are adapted to be printed in lots, for example, in several thousands of copies of seemingly similar codes, but each containing various information.
The invention improves the situation. To this end, the invention provides for an optical-reading code preparation device comprising:                a storage unit able to receive data to be coded, and parameter data comprising presentation data,        an encoding unit able to produce code data on the basis of data to be coded and parameter data,        an imaging unit able to produce data defining an image plane on the basis of presentation data and/or code data,        a scheduler devised so as to, in response to the receipt of data to be coded and of parameter data comprising presentation data:        call the encoding unit with the data to be coded and the parameter data received so as to produce associated code data,        call the imaging unit with the associated code data, selectively with some at least of the presentation data so as to produce data regarding a bright information plane and/or data regarding a dark information plane,        call the imaging unit with some of the designated presentation data defining an image so as to produce data regarding a bright information plane and/or data regarding a dark information plane, and        prepare the code on the basis of an arrangement, in a predetermined order, of the data regarding a bright information plane, the data regarding a dark information plane, the data regarding a bright image plane, and the data regarding a dark image plane.        
The invention also relates to a method for preparing an optical-reading code, which comprises:                receiving data to be coded, and parameter data comprising presentation data,        calculating code data on the basis of data to be coded and parameter data,        producing data regarding a bright information plane and/or data regarding a dark information plane on the basis of the code data, and selectively on the basis of some at least of the presentation data,        producing data regarding a bright image plane and/or data regarding a dark image plane on the basis of some at least of the presentation data defining an image, and        preparing the code on the basis of an arrangement, in a predetermined order, of the data regarding a bright information plane and/or the data regarding a dark information plane, and/or the data regarding a bright image plane, and/or data regarding a dark image plane.        